Basic parts of the program